Skip to content

Conversation

@instamenta
Copy link
Contributor

@instamenta instamenta commented Dec 19, 2025

Description

  • Add a new command solo block node add-external that allows to provide external block node address and configure each inside the block-nodes.json

  • Add new flag --address for solo block node add-external, allowing to pass an address, and optionally, after : a port override can be added (default port 40840)

  • Add new component inside the remote config to represent the external block node

Related Issues

Note for reviewer

Check the structure of the external block node component, and note if any changes should be made to it

Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
…de-different-block-node-sourcesjson-for-each-cn-that-is-created

# Conflicts:
#	test/e2e/commands/block-node.test.ts
Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
…-node deploys and updates the configmaps + consensus node data/config files

Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
…de-different-block-node-sourcesjson-for-each-cn-that-is-created
@trunk-io
Copy link

trunk-io bot commented Dec 19, 2025

Merging to main in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

@instamenta instamenta marked this pull request as draft December 19, 2025 10:11
@github-actions
Copy link
Contributor

github-actions bot commented Dec 19, 2025

Unit Test Results - Windows

  1 files  ±0  187 suites  ±0   4s ⏱️ ±0s
510 tests ±0  510 ✅ ±0  0 💤 ±0  0 ❌ ±0 
514 runs  ±0  514 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 720fda7. ± Comparison against base commit a0a6443.

♻️ This comment has been updated with latest results.

@github-actions
Copy link
Contributor

github-actions bot commented Dec 19, 2025

Unit Test Results - Linux

32 tests  ±0   32 ✅ ±0   0s ⏱️ ±0s
16 suites ±0    0 💤 ±0 
 1 files   ±0    0 ❌ ±0 

Results for commit 720fda7. ± Comparison against base commit a0a6443.

♻️ This comment has been updated with latest results.

Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
…de-different-block-node-sourcesjson-for-each-cn-that-is-created
@github-actions
Copy link
Contributor

github-actions bot commented Jan 6, 2026

This pull request is stale because it has been open 14 days with no activity. Remove stale label or comment on this pull request; otherwise, this pull request will be closed in 14 days.

@github-actions github-actions bot added the Stale Denotes stale issues and pull requests tracked by the actions/stale workflow. label Jan 6, 2026
Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
@github-actions github-actions bot removed the Stale Denotes stale issues and pull requests tracked by the actions/stale workflow. label Jan 8, 2026
Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
…o avoid repeating logic

Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
…de-different-block-node-sourcesjson-for-each-cn-that-is-created
… for external block-nodes and adding additional consensus nodes

Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
…de-different-block-node-sourcesjson-for-each-cn-that-is-created
…de-different-block-node-sourcesjson-for-each-cn-that-is-created
@codacy-production
Copy link

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
+0.07% (target: -1.00%) 96.51%
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (8e0f007) 51523 43239 83.92%
Head commit (80436fc) 51774 (+251) 43485 (+246) 83.99% (+0.07%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#3086) 372 359 96.51%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

…de-different-block-node-sourcesjson-for-each-cn-that-is-created
@instamenta instamenta added PR: Needs Team Approval A pull request that needs review from a team member. PR: Needs Manager Approval A pull request that needs review from a manager. labels Jan 21, 2026
@codacy-production
Copy link

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
+0.07% (target: -1.00%) 96.51%
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (82a4b1e) 51523 43245 83.93%
Head commit (7cdc990) 51774 (+251) 43493 (+248) 84.01% (+0.07%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#3086) 372 359 96.51%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

@jeromy-cannon jeromy-cannon added PR: Merge Conflicts A pull request that has merge conflicts that need to be resolved. and removed PR: Needs Team Approval A pull request that needs review from a team member. PR: Needs Manager Approval A pull request that needs review from a manager. labels Jan 21, 2026
@jeromy-cannon jeromy-cannon marked this pull request as draft January 21, 2026 14:13
…de-different-block-node-sourcesjson-for-each-cn-that-is-created

# Conflicts:
#	src/core/block-nodes-json-wrapper.ts
Signed-off-by: Zhan Milenkov <instamenta@abv.bg>
@instamenta instamenta marked this pull request as ready for review January 21, 2026 14:54
@instamenta instamenta added PR: Needs Team Approval A pull request that needs review from a team member. PR: Needs Manager Approval A pull request that needs review from a manager. and removed PR: Merge Conflicts A pull request that has merge conflicts that need to be resolved. labels Jan 21, 2026
@github-actions
Copy link
Contributor

Log Metrics - One Shot Single - using Podman

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 8.0 minutes (9 data points)

📉 CPU Usage
100.0% | + ##    
 90.0% | # ##    
 80.0% | # ##    
 70.0% | # ##    
 60.0% | # ##    
 50.0% | # ##    
 40.0% | # ## +  
 30.0% | # ## #  
 20.0% | # ##+#  
 10.0% |+#+####++
  0.0% |#########
       +---------

📉 Memory Usage
100.0% |         
 90.0% |         
 80.0% |         
 70.0% |         
 60.0% |         
 50.0% |     ++  
 40.0% |     ##  
 30.0% |   ++##++
 20.0% | ++######
 10.0% |+########
  0.0% |#########
       +---------

⚠️  WARNING: Resource usage exceeded 95% threshold!
    CPU Peak: 100%  |  Memory Peak: 40.0%


JSON Log Metrics

{
  "snapshotName": "one-shot-single-minimal",
  "date": "2026-01-21T15:06:15.055Z",
  "gitHubSha": "94ce29734f5ed548c10fc977dea5cce0fd4a839f",
  "soloVersion": "0.53.0",
  "soloChartVersion": "0.59.0",
  "consensusNodeVersion": "0.68.6",
  "mirrorNodeVersion": "0.145.2",
  "blockNodeVersion": "0.23.2",
  "relayVersion": "0.73.0",
  "explorerVersion": "25.1.1",
  "cpuInMillicores": 602,
  "memoryInMebibytes": 3224,
  "runtimeInMinutes": 0,
  "transactionCount": 0,
  "events": [],
  "clusterMetrics": [
    {
      "context": "default",
      "cpuInMillicores": 602,
      "memoryInMebibytes": 3224,
      "podMetrics": [
        {
          "namespace": "kube-system",
          "podName": "coredns-7d764666f9-58h7c",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 13
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7d764666f9-7886x",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 13
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-kind-control-plane",
          "cpuInMillicores": 35,
          "memoryInMebibytes": 77
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-drmvc",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 14
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-kind-control-plane",
          "cpuInMillicores": 103,
          "memoryInMebibytes": 682
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-bstr8",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 19
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-kind-control-plane",
          "cpuInMillicores": 7,
          "memoryInMebibytes": 25
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-74c6bc5757-zsdqt",
          "cpuInMillicores": 94,
          "memoryInMebibytes": 15
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-67b8995b4b-fxw9s",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 11
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-84c7d4d544-q8r48",
          "cpuInMillicores": 42,
          "memoryInMebibytes": 41
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "envoy-proxy-node1-7656fff9b6-zjfgc",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 17
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "haproxy-node1-6f487c55d7-5t6zq",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 120
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 17,
          "memoryInMebibytes": 200
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-1-grpc-6666578467-khwc4",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 311
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-1-importer-55b8d5565-mbj4c",
          "cpuInMillicores": 66,
          "memoryInMebibytes": 457
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-1-monitor-5658875b7c-cc2wj",
          "cpuInMillicores": 122,
          "memoryInMebibytes": 273
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-1-redis-node-0",
          "cpuInMillicores": 32,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-1-rest-fbfc9bf7f-nbfqq",
          "cpuInMillicores": 43,
          "memoryInMebibytes": 161
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-1-restjava-76c457c86d-kt4nk",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 347
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-1-web3-78b64c5d94-dj946",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 367
        },
        {
          "namespace": "solo-da6c2fd1",
          "podName": "mirror-ingress-controller-6bc6b78777-9mtqx",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 29
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-586bc567bd-9lr4m",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 16
        }
      ]
    }
  ]
}

@github-actions
Copy link
Contributor

Log Metrics - One Shot Single

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 7.0 minutes (8 data points)

📉 CPU Usage
100.0% |        
 90.0% |        
 80.0% |        
 70.0% |        
 60.0% |        
 50.0% |        
 40.0% | +      
 30.0% | #+ ++  
 20.0% | ##+##  
 10.0% |+#####++
  0.0% |########
       +--------

📉 Memory Usage
100.0% |        
 90.0% |        
 80.0% |        
 70.0% |        
 60.0% |        
 50.0% |        
 40.0% |        
 30.0% |  +++   
 20.0% | +###+++
 10.0% |+#######
  0.0% |########
       +--------

✅ Resource usage within normal limits
    CPU Peak: 35.1%  |  Memory Peak: 21.6%


JSON Log Metrics

{
  "snapshotName": "one-shot-single",
  "date": "2026-01-21T15:06:50.636Z",
  "gitHubSha": "94ce29734f5ed548c10fc977dea5cce0fd4a839f",
  "soloVersion": "0.53.0",
  "soloChartVersion": "0.59.0",
  "consensusNodeVersion": "0.68.6",
  "mirrorNodeVersion": "0.145.2",
  "blockNodeVersion": "0.23.2",
  "relayVersion": "0.73.0",
  "explorerVersion": "25.1.1",
  "cpuInMillicores": 945,
  "memoryInMebibytes": 5614,
  "runtimeInMinutes": 4,
  "transactionCount": 1340,
  "events": [],
  "clusterMetrics": [
    {
      "context": "default",
      "cpuInMillicores": 945,
      "memoryInMebibytes": 5614,
      "podMetrics": [
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-7fj2w",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-mqvld",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-e2e-one-shot-single-21214163657-1-c1-control-plane",
          "cpuInMillicores": 27,
          "memoryInMebibytes": 68
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-2wvhr",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 12
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-e2e-one-shot-single-21214163657-1-c1-control-plane",
          "cpuInMillicores": 47,
          "memoryInMebibytes": 521
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-e2e-one-shot-single-21214163657-1-c1-control-plane",
          "cpuInMillicores": 17,
          "memoryInMebibytes": 71
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-mc4np",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 18
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-e2e-one-shot-single-21214163657-1-c1-control-plane",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 22
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-cqwm8",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 23
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-2j29q",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-gjpbv",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 37
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-qvg29",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 53
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "envoy-proxy-node1-74bcfb64f8-btn9r",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 27
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "haproxy-node1-7bb68675fc-gjwwg",
          "cpuInMillicores": 8,
          "memoryInMebibytes": 108
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "hiero-explorer-1-5585d47c6-q7rcc",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 2
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 17,
          "memoryInMebibytes": 182
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-grpc-85f57769b6-2mf4f",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 315
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-importer-58b7595d6-cmg26",
          "cpuInMillicores": 92,
          "memoryInMebibytes": 450
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-monitor-74cff4d659-5ghvx",
          "cpuInMillicores": 94,
          "memoryInMebibytes": 280
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-postgres-postgresql-0",
          "cpuInMillicores": 49,
          "memoryInMebibytes": 142
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-redis-node-0",
          "cpuInMillicores": 30,
          "memoryInMebibytes": 8
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-rest-8bfcf8c8d-vsvtn",
          "cpuInMillicores": 40,
          "memoryInMebibytes": 103
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-restjava-8577f8f66b-dldgr",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 325
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-1-web3-759bf8dcfd-xvltb",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 378
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "mirror-ingress-controller-5d9c688cf9-p7zrn",
          "cpuInMillicores": 17,
          "memoryInMebibytes": 39
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "network-node1-0",
          "cpuInMillicores": 440,
          "memoryInMebibytes": 1959
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "relay-1-686fc69666-rdz5z",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 208
        },
        {
          "namespace": "solo-abb3c96a",
          "podName": "relay-1-ws-7887947bbc-7djdf",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 205
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-5df5d4fc74-wxlj7",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 16
        }
      ]
    }
  ]
}

@github-actions
Copy link
Contributor

Log Metrics - External database new

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 12.0 minutes (13 data points)

📉 CPU Usage
100.0% |             
 90.0% |             
 80.0% |             
 70.0% |             
 60.0% |  +          
 50.0% |  #  +       
 40.0% | +#  #++     
 30.0% | ## +###++++ 
 20.0% | ##+########+
 10.0% |+############
  0.0% |#############
       +-------------

📉 Memory Usage
100.0% |             
 90.0% |             
 80.0% |             
 70.0% |             
 60.0% |             
 50.0% |             
 40.0% |        ++   
 30.0% |     +++##+++
 20.0% | ++++########
 10.0% |+############
  0.0% |#############
       +-------------

✅ Resource usage within normal limits
    CPU Peak: 56.1%  |  Memory Peak: 32.8%


JSON Log Metrics

{
  "snapshotName": "external-database-test",
  "date": "2026-01-21T15:15:00.814Z",
  "gitHubSha": "94ce29734f5ed548c10fc977dea5cce0fd4a839f",
  "soloVersion": "0.53.0",
  "soloChartVersion": "0.59.0",
  "consensusNodeVersion": "0.68.6",
  "mirrorNodeVersion": "0.145.2",
  "blockNodeVersion": "0.23.2",
  "relayVersion": "0.73.0",
  "explorerVersion": "25.1.1",
  "cpuInMillicores": 1317,
  "memoryInMebibytes": 11059,
  "runtimeInMinutes": 12,
  "transactionCount": 0,
  "events": [],
  "clusterMetrics": [
    {
      "context": "kind-e2e-external-database-21214163657-1-c1",
      "cpuInMillicores": 552,
      "memoryInMebibytes": 4117,
      "podMetrics": [
        {
          "namespace": "external-database-test",
          "podName": "envoy-proxy-node1-559fd7cf65-zfmnq",
          "cpuInMillicores": 11,
          "memoryInMebibytes": 27
        },
        {
          "namespace": "external-database-test",
          "podName": "haproxy-node1-85866454b-h7xzd",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 107
        },
        {
          "namespace": "external-database-test",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 8,
          "memoryInMebibytes": 170
        },
        {
          "namespace": "external-database-test",
          "podName": "network-node1-0",
          "cpuInMillicores": 442,
          "memoryInMebibytes": 3061
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-cp79l",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 15
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-gm2q9",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-e2e-external-database-21214163657-1-c1-control-plane",
          "cpuInMillicores": 21,
          "memoryInMebibytes": 72
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-pgdxz",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-e2e-external-database-21214163657-1-c1-control-plane",
          "cpuInMillicores": 32,
          "memoryInMebibytes": 410
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-e2e-external-database-21214163657-1-c1-control-plane",
          "cpuInMillicores": 11,
          "memoryInMebibytes": 58
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-s7qq2",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 14
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-e2e-external-database-21214163657-1-c1-control-plane",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 21
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-642j9",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 21
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-968bk",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-ctf9x",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 36
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-r9v89",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 54
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-5df5d4fc74-7f2jm",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 15
        }
      ]
    },
    {
      "context": "kind-e2e-external-database-21214163657-1-c2",
      "cpuInMillicores": 765,
      "memoryInMebibytes": 6942,
      "podMetrics": [
        {
          "namespace": "database",
          "podName": "my-postgresql-0",
          "cpuInMillicores": 23,
          "memoryInMebibytes": 136
        },
        {
          "namespace": "external-database-test",
          "podName": "envoy-proxy-node2-866544c45d-wjhvp",
          "cpuInMillicores": 11,
          "memoryInMebibytes": 27
        },
        {
          "namespace": "external-database-test",
          "podName": "haproxy-node2-54fc8fd459-t4ffz",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 108
        },
        {
          "namespace": "external-database-test",
          "podName": "hiero-explorer-1-5585d47c6-24dmf",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 2
        },
        {
          "namespace": "external-database-test",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 15,
          "memoryInMebibytes": 277
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-grpc-6454987778-wgm8g",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 362
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-importer-565848c9bf-k5rpx",
          "cpuInMillicores": 36,
          "memoryInMebibytes": 482
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-ingress-controller-bb5dc897b-s2p2w",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 39
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-monitor-d6f468c5b-hgjwc",
          "cpuInMillicores": 30,
          "memoryInMebibytes": 304
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-redis-node-0",
          "cpuInMillicores": 26,
          "memoryInMebibytes": 7
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-rest-58467f8d9c-kpjpd",
          "cpuInMillicores": 34,
          "memoryInMebibytes": 113
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-restjava-66ffcc9c88-nq8kd",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 344
        },
        {
          "namespace": "external-database-test",
          "podName": "mirror-web3-57996dd9b8-h5j85",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 413
        },
        {
          "namespace": "external-database-test",
          "podName": "network-node2-0",
          "cpuInMillicores": 445,
          "memoryInMebibytes": 3093
        },
        {
          "namespace": "external-database-test",
          "podName": "relay-1-686fc69666-hqhfc",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 221
        },
        {
          "namespace": "external-database-test",
          "podName": "relay-1-ws-7887947bbc-k4fpn",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 209
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-hkctp",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-vzjwb",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 17
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-e2e-external-database-21214163657-1-c2-control-plane",
          "cpuInMillicores": 28,
          "memoryInMebibytes": 79
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-jx4wg",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-e2e-external-database-21214163657-1-c2-control-plane",
          "cpuInMillicores": 37,
          "memoryInMebibytes": 443
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-e2e-external-database-21214163657-1-c2-control-plane",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 66
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-shsct",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 15
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-e2e-external-database-21214163657-1-c2-control-plane",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 21
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-g7vxl",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 23
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-svvzx",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-tms9l",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 36
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-rb8n7",
          "cpuInMillicores": 7,
          "memoryInMebibytes": 54
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-5df5d4fc74-965vj",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 15
        }
      ]
    }
  ]
}

@github-actions
Copy link
Contributor

Log Metrics - Block Node

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 6.0 minutes (7 data points)

📉 CPU Usage
100.0% |       
 90.0% |       
 80.0% |       
 70.0% |     + 
 60.0% |     # 
 50.0% |     # 
 40.0% |   + # 
 30.0% |   #+# 
 20.0% | ++###+
 10.0% |+######
  0.0% |#######
       +-------

📉 Memory Usage
100.0% |       
 90.0% |       
 80.0% |       
 70.0% |       
 60.0% |       
 50.0% |       
 40.0% |       
 30.0% |       
 20.0% | ++++++
 10.0% |+######
  0.0% |#######
       +-------

✅ Resource usage within normal limits
    CPU Peak: 69.3%  |  Memory Peak: 19.2%


@github-actions
Copy link
Contributor

Log Metrics - Performance Test

JSON Log Metrics

{
  "snapshotName": "performance-tests-1301180",
  "date": "2026-01-21T15:25:23.696Z",
  "gitHubSha": "94ce29734f5ed548c10fc977dea5cce0fd4a839f",
  "soloVersion": "0.53.0",
  "soloChartVersion": "0.59.0",
  "consensusNodeVersion": "0.68.6",
  "mirrorNodeVersion": "0.145.2",
  "blockNodeVersion": "0.23.2",
  "relayVersion": "0.73.0",
  "explorerVersion": "25.1.1",
  "cpuInMillicores": 2314,
  "memoryInMebibytes": 9040,
  "runtimeInMinutes": 26,
  "transactionCount": 40435,
  "events": [],
  "clusterMetrics": [
    {
      "context": "default",
      "cpuInMillicores": 2314,
      "memoryInMebibytes": 9040,
      "podMetrics": [
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-hzhs9",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-k4xd7",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 17
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-solo-e2e-c1-control-plane",
          "cpuInMillicores": 26,
          "memoryInMebibytes": 77
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-pbw65",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 12
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-solo-e2e-c1-control-plane",
          "cpuInMillicores": 47,
          "memoryInMebibytes": 494
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-solo-e2e-c1-control-plane",
          "cpuInMillicores": 14,
          "memoryInMebibytes": 66
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-hpqrn",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 15
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-solo-e2e-c1-control-plane",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 22
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-nqggz",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 25
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-sw8t6",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-z5pmp",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 36
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-96c7k",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 54
        },
        {
          "namespace": "solo-25799096",
          "podName": "block-node-1-0",
          "cpuInMillicores": 1000,
          "memoryInMebibytes": 577
        },
        {
          "namespace": "solo-25799096",
          "podName": "envoy-proxy-node1-74bcfb64f8-t422p",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 28
        },
        {
          "namespace": "solo-25799096",
          "podName": "haproxy-node1-7bb68675fc-mdgfz",
          "cpuInMillicores": 20,
          "memoryInMebibytes": 114
        },
        {
          "namespace": "solo-25799096",
          "podName": "hiero-explorer-1-5585d47c6-55hpv",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 2
        },
        {
          "namespace": "solo-25799096",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 28,
          "memoryInMebibytes": 338
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-grpc-7f8dd577f6-rbtvv",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 328
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-importer-85df79dcc5-mpdm4",
          "cpuInMillicores": 105,
          "memoryInMebibytes": 514
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-monitor-795dc7898b-hrrfl",
          "cpuInMillicores": 38,
          "memoryInMebibytes": 310
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-postgres-postgresql-0",
          "cpuInMillicores": 77,
          "memoryInMebibytes": 225
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-redis-node-0",
          "cpuInMillicores": 30,
          "memoryInMebibytes": 7
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-rest-775d979cbb-qnpk5",
          "cpuInMillicores": 76,
          "memoryInMebibytes": 106
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-restjava-6896c44f4b-48qkt",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 350
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-1-web3-55fbc77c67-dbs2g",
          "cpuInMillicores": 14,
          "memoryInMebibytes": 373
        },
        {
          "namespace": "solo-25799096",
          "podName": "mirror-ingress-controller-6fd677787c-vgn8t",
          "cpuInMillicores": 16,
          "memoryInMebibytes": 39
        },
        {
          "namespace": "solo-25799096",
          "podName": "network-node1-0",
          "cpuInMillicores": 764,
          "memoryInMebibytes": 4442
        },
        {
          "namespace": "solo-25799096",
          "podName": "relay-1-686fc69666-bjcxh",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 215
        },
        {
          "namespace": "solo-25799096",
          "podName": "relay-1-ws-7887947bbc-947zr",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 213
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-5df5d4fc74-4jmx7",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 15
        }
      ]
    }
  ]
}

@github-actions
Copy link
Contributor

Log Metrics - Node Upgrade

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 5.0 minutes (6 data points)

📉 CPU Usage
100.0% |      
 90.0% |      
 80.0% |      
 70.0% |      
 60.0% |      
 50.0% |      
 40.0% |     +
 30.0% |     #
 20.0% |  +++#
 10.0% |++####
  0.0% |######
       +------

📉 Memory Usage
100.0% |      
 90.0% |      
 80.0% |      
 70.0% |      
 60.0% |      
 50.0% |      
 40.0% |      
 30.0% |  +   
 20.0% | +#+++
 10.0% |+#####
  0.0% |######
       +------

✅ Resource usage within normal limits
    CPU Peak: 31.9%  |  Memory Peak: 20%


@github-actions
Copy link
Contributor

Log Metrics - Node Local PTT

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 2.0 minutes (3 data points)

📉 CPU Usage
100.0% |   
 90.0% |   
 80.0% |   
 70.0% |   
 60.0% |   
 50.0% |   
 40.0% |   
 30.0% |  +
 20.0% |  #
 10.0% |++#
  0.0% |###
       +---

📉 Memory Usage
100.0% |   
 90.0% |   
 80.0% |   
 70.0% |   
 60.0% |   
 50.0% |   
 40.0% |   
 30.0% |   
 20.0% |  +
 10.0% |++#
  0.0% |###
       +---

✅ Resource usage within normal limits
    CPU Peak: 22.2%  |  Memory Peak: 12%


@github-actions
Copy link
Contributor

Log Metrics - Dual Cluster Full

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 24.0 minutes (25 data points)

📉 CPU Usage
100.0% |                         
 90.0% |                         
 80.0% |                         
 70.0% |                         
 60.0% |                         
 50.0% |                         
 40.0% |                         
 30.0% |     +  +  +  + +   +    
 20.0% | +++ #+ #++#++#+#+++# + +
 10.0% |+###+##+#############+#+#
  0.0% |#########################
       +-------------------------

📉 Memory Usage
100.0% |                         
 90.0% |                         
 80.0% |                         
 70.0% |                         
 60.0% |                         
 50.0% |                         
 40.0% |                         
 30.0% |                         
 20.0% | ++++++++++++++++++++++++
 10.0% |+########################
  0.0% |#########################
       +-------------------------

✅ Resource usage within normal limits
    CPU Peak: 26.2%  |  Memory Peak: 19.2%


JSON Log Metrics

{
  "snapshotName": "dual-cluster-full",
  "date": "2026-01-21T15:44:07.176Z",
  "gitHubSha": "94ce29734f5ed548c10fc977dea5cce0fd4a839f",
  "soloVersion": "0.53.0",
  "soloChartVersion": "0.59.0",
  "consensusNodeVersion": "0.68.6",
  "mirrorNodeVersion": "0.145.2",
  "blockNodeVersion": "0.23.2",
  "relayVersion": "0.73.0",
  "explorerVersion": "25.1.1",
  "cpuInMillicores": 3013,
  "memoryInMebibytes": 8647,
  "runtimeInMinutes": 3,
  "transactionCount": 0,
  "events": [],
  "clusterMetrics": [
    {
      "context": "kind-e2e-dual-cluster-full-21214163657-1-c1",
      "cpuInMillicores": 1542,
      "memoryInMebibytes": 3152,
      "podMetrics": [
        {
          "namespace": "dual-cluster-full",
          "podName": "block-node-1-0",
          "cpuInMillicores": 1000,
          "memoryInMebibytes": 389
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "envoy-proxy-node1-559fd7cf65-9w2kw",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 28
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "haproxy-node1-85866454b-tnh6h",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 109
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 12,
          "memoryInMebibytes": 191
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "network-node1-0",
          "cpuInMillicores": 410,
          "memoryInMebibytes": 1551
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-c79bv",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 18
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-nqqmw",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-e2e-dual-cluster-full-21214163657-1-c1-control-plane",
          "cpuInMillicores": 24,
          "memoryInMebibytes": 87
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-s4pnr",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 11
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-e2e-dual-cluster-full-21214163657-1-c1-control-plane",
          "cpuInMillicores": 38,
          "memoryInMebibytes": 501
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-e2e-dual-cluster-full-21214163657-1-c1-control-plane",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 75
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-hrqfj",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 14
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-e2e-dual-cluster-full-21214163657-1-c1-control-plane",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 23
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-p9gsx",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 21
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-qggx8",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 11
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-b2p7r",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 37
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-8cvnq",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 55
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-5df5d4fc74-vp4jl",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 15
        }
      ]
    },
    {
      "context": "kind-e2e-dual-cluster-full-21214163657-1-c2",
      "cpuInMillicores": 1471,
      "memoryInMebibytes": 5495,
      "podMetrics": [
        {
          "namespace": "dual-cluster-full",
          "podName": "envoy-proxy-node2-866544c45d-4lfll",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 28
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "haproxy-node2-54fc8fd459-ptzx9",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 109
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "hiero-explorer-1-5585d47c6-49ntc",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 2
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 137,
          "memoryInMebibytes": 373
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-grpc-69475dfc4-6l6hh",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 319
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-importer-5dbf9b69bc-wc5cf",
          "cpuInMillicores": 95,
          "memoryInMebibytes": 485
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-monitor-7965446bd7-ntjjw",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 317
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-postgres-postgresql-0",
          "cpuInMillicores": 22,
          "memoryInMebibytes": 124
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-redis-node-0",
          "cpuInMillicores": 28,
          "memoryInMebibytes": 7
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-rest-655cd769cc-nhpqs",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 100
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-restjava-5445bc66db-v8nwb",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 350
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-1-web3-54c6496887-5qsgb",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 369
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "mirror-ingress-controller-85858dfdf7-pzfxv",
          "cpuInMillicores": 16,
          "memoryInMebibytes": 40
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "network-node2-0",
          "cpuInMillicores": 422,
          "memoryInMebibytes": 1536
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "relay-1-686fc69666-mk69x",
          "cpuInMillicores": 277,
          "memoryInMebibytes": 217
        },
        {
          "namespace": "dual-cluster-full",
          "podName": "relay-1-ws-7887947bbc-ghqlr",
          "cpuInMillicores": 322,
          "memoryInMebibytes": 220
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-75qkc",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 17
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-q7gnt",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 17
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-e2e-dual-cluster-full-21214163657-1-c2-control-plane",
          "cpuInMillicores": 26,
          "memoryInMebibytes": 88
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-jf2g6",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 12
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-e2e-dual-cluster-full-21214163657-1-c2-control-plane",
          "cpuInMillicores": 41,
          "memoryInMebibytes": 513
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-e2e-dual-cluster-full-21214163657-1-c2-control-plane",
          "cpuInMillicores": 14,
          "memoryInMebibytes": 73
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-bjjz8",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 15
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-e2e-dual-cluster-full-21214163657-1-c2-control-plane",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 23
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-n8hmp",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 24
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-zqlkk",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-zbf9s",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 37
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-jtfrk",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 54
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-5df5d4fc74-9hwbh",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 16
        }
      ]
    }
  ]
}

@github-actions
Copy link
Contributor

Log Metrics - Standard

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 41.0 minutes (42 data points)

📉 CPU Usage
100.0% |                                          
 90.0% |                                          
 80.0% |                                          
 70.0% |                                          
 60.0% |                                          
 50.0% |                                          
 40.0% |                                          
 30.0% |   +      +                               
 20.0% | ++#  +   # ++  +++    +             +  + 
 10.0% |+###++#+++#+##++###++++#+++++++++++++#++#+
  0.0% |##########################################
       +------------------------------------------

📉 Memory Usage
100.0% |                                          
 90.0% |                                          
 80.0% |                                          
 70.0% |                                          
 60.0% |                                          
 50.0% |                                          
 40.0% |                                          
 30.0% |                   +++++                  
 20.0% | ++++++++++++++++++#####++++++++++++++++  
 10.0% |+#######################################++
  0.0% |##########################################
       +------------------------------------------

✅ Resource usage within normal limits
    CPU Peak: 22.2%  |  Memory Peak: 20.8%


JSON Log Metrics

{
  "snapshotName": "performance-tests-85260",
  "date": "2026-01-21T15:36:12.787Z",
  "gitHubSha": "94ce29734f5ed548c10fc977dea5cce0fd4a839f",
  "soloVersion": "0.53.0",
  "soloChartVersion": "0.59.0",
  "consensusNodeVersion": "0.68.6",
  "mirrorNodeVersion": "0.145.2",
  "blockNodeVersion": "0.23.2",
  "relayVersion": "0.73.0",
  "explorerVersion": "25.1.1",
  "cpuInMillicores": 1362,
  "memoryInMebibytes": 6069,
  "runtimeInMinutes": 6,
  "transactionCount": 2242,
  "events": [],
  "clusterMetrics": [
    {
      "context": "default",
      "cpuInMillicores": 1362,
      "memoryInMebibytes": 6069,
      "podMetrics": [
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-8dv7n",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 17
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-ktd78",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 18
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-e2e-standard-21214163657-1-c1-control-plane",
          "cpuInMillicores": 25,
          "memoryInMebibytes": 83
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-tmkbr",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 11
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-e2e-standard-21214163657-1-c1-control-plane",
          "cpuInMillicores": 52,
          "memoryInMebibytes": 552
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-e2e-standard-21214163657-1-c1-control-plane",
          "cpuInMillicores": 14,
          "memoryInMebibytes": 71
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-bgr8t",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-e2e-standard-21214163657-1-c1-control-plane",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 23
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-r5bls",
          "cpuInMillicores": 5,
          "memoryInMebibytes": 24
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-mvtn2",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 9
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-sd97r",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 36
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-49d77",
          "cpuInMillicores": 7,
          "memoryInMebibytes": 55
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "envoy-proxy-node1-74bcfb64f8-br9wq",
          "cpuInMillicores": 13,
          "memoryInMebibytes": 27
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "haproxy-node1-7bb68675fc-j2blb",
          "cpuInMillicores": 15,
          "memoryInMebibytes": 109
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "hiero-explorer-1-5585d47c6-7vpsx",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 2
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "minio-pool-1-0",
          "cpuInMillicores": 18,
          "memoryInMebibytes": 200
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-grpc-7459d7f945-rksgd",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 322
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-importer-54f946c67d-ztqxs",
          "cpuInMillicores": 96,
          "memoryInMebibytes": 463
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-monitor-65ff49796d-4vdtj",
          "cpuInMillicores": 88,
          "memoryInMebibytes": 284
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-postgres-postgresql-0",
          "cpuInMillicores": 80,
          "memoryInMebibytes": 158
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-redis-node-0",
          "cpuInMillicores": 30,
          "memoryInMebibytes": 8
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-rest-85c4bd5cc9-pqq82",
          "cpuInMillicores": 47,
          "memoryInMebibytes": 105
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-restjava-74bdcbf87-t5grt",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 343
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-1-web3-87dbbc964-kj6db",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 381
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "mirror-ingress-controller-657b9899dc-jwrf2",
          "cpuInMillicores": 17,
          "memoryInMebibytes": 38
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "network-node1-0",
          "cpuInMillicores": 815,
          "memoryInMebibytes": 2284
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "relay-1-686fc69666-5twvf",
          "cpuInMillicores": 7,
          "memoryInMebibytes": 209
        },
        {
          "namespace": "solo-d281ac6b",
          "podName": "relay-1-ws-7887947bbc-lszqt",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 205
        },
        {
          "namespace": "solo-setup",
          "podName": "minio-operator-5df5d4fc74-dqbzq",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 16
        }
      ]
    }
  ]
}

@github-actions
Copy link
Contributor

Log Metrics - Node Add Local

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 20.0 minutes (21 data points)

📉 CPU Usage
100.0% |                     
 90.0% |                     
 80.0% |                     
 70.0% |                     
 60.0% |                     
 50.0% |                     
 40.0% |            +        
 30.0% |            #   ++   
 20.0% | +       + +# + ## + 
 10.0% |+#+++++++#+##+#+##+#+
  0.0% |#####################
       +---------------------

📉 Memory Usage
100.0% |                     
 90.0% |                     
 80.0% |                     
 70.0% |                     
 60.0% |                     
 50.0% |                     
 40.0% |                     
 30.0% |                     
 20.0% | ++++++++++++++++++++
 10.0% |+####################
  0.0% |#####################
       +---------------------

✅ Resource usage within normal limits
    CPU Peak: 30.8%  |  Memory Peak: 16%


@github-actions
Copy link
Contributor

Log Metrics - Integration

📊 Runner Resource Usage

╔═══════════════════════════════════════════════════════════════╗
║          GitHub Runner Resource Usage                         ║
╚═══════════════════════════════════════════════════════════════╝

⏱️  Test Duration: 5.0 minutes (6 data points)

📉 CPU Usage
100.0% |      
 90.0% |      
 80.0% |      
 70.0% |      
 60.0% |      
 50.0% |      
 40.0% |      
 30.0% |      
 20.0% |    + 
 10.0% |++++#+
  0.0% |######
       +------

📉 Memory Usage
100.0% |      
 90.0% |      
 80.0% |      
 70.0% |      
 60.0% |      
 50.0% |      
 40.0% |      
 30.0% |      
 20.0% |  +   
 10.0% |++#+++
  0.0% |######
       +------

✅ Resource usage within normal limits
    CPU Peak: 11%  |  Memory Peak: 10.4%


JSON Log Metrics

{
  "snapshotName": "metric-server-test",
  "date": "2026-01-21T17:04:23.997Z",
  "gitHubSha": "94ce29734f5ed548c10fc977dea5cce0fd4a839f",
  "soloVersion": "undefined",
  "soloChartVersion": "undefined",
  "consensusNodeVersion": "undefined",
  "mirrorNodeVersion": "undefined",
  "blockNodeVersion": "undefined",
  "relayVersion": "undefined",
  "explorerVersion": "undefined",
  "cpuInMillicores": 212,
  "memoryInMebibytes": 498,
  "runtimeInMinutes": 0,
  "transactionCount": 0,
  "events": [],
  "clusterMetrics": [
    {
      "context": "default",
      "cpuInMillicores": 212,
      "memoryInMebibytes": 498,
      "podMetrics": [
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-mmjwr",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 13
        },
        {
          "namespace": "kube-system",
          "podName": "coredns-7c65d6cfc9-sdc7q",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 13
        },
        {
          "namespace": "kube-system",
          "podName": "etcd-e2e-integration-21214163657-2-c1-control-plane",
          "cpuInMillicores": 36,
          "memoryInMebibytes": 35
        },
        {
          "namespace": "kube-system",
          "podName": "kindnet-wd4hm",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 10
        },
        {
          "namespace": "kube-system",
          "podName": "kube-apiserver-e2e-integration-21214163657-2-c1-control-plane",
          "cpuInMillicores": 130,
          "memoryInMebibytes": 244
        },
        {
          "namespace": "kube-system",
          "podName": "kube-controller-manager-e2e-integration-21214163657-2-c1-control-plane",
          "cpuInMillicores": 16,
          "memoryInMebibytes": 56
        },
        {
          "namespace": "kube-system",
          "podName": "kube-proxy-gm5q7",
          "cpuInMillicores": 2,
          "memoryInMebibytes": 15
        },
        {
          "namespace": "kube-system",
          "podName": "kube-scheduler-e2e-integration-21214163657-2-c1-control-plane",
          "cpuInMillicores": 3,
          "memoryInMebibytes": 19
        },
        {
          "namespace": "kube-system",
          "podName": "metrics-server-fbb76bc7f-snkld",
          "cpuInMillicores": 9,
          "memoryInMebibytes": 19
        },
        {
          "namespace": "local-path-storage",
          "podName": "local-path-provisioner-6fdc965494-tc2s7",
          "cpuInMillicores": 1,
          "memoryInMebibytes": 7
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-controller-676f677b6b-sc85c",
          "cpuInMillicores": 4,
          "memoryInMebibytes": 16
        },
        {
          "namespace": "metallb-system",
          "podName": "metallb-speaker-wblbg",
          "cpuInMillicores": 6,
          "memoryInMebibytes": 51
        }
      ]
    }
  ]
}

@codacy-production
Copy link

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
Report missing for a0a64431 96.33%
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (a0a6443) Report Missing Report Missing Report Missing
Head commit (720fda7) 51794 43505 84.00%

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#3086) 354 341 96.33%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

Footnotes

  1. Codacy didn't receive coverage data for the commit, or there was an error processing the received data. Check your integration for errors and validate that your coverage setup is correct.

@jeromy-cannon jeromy-cannon merged commit 91b0991 into main Jan 21, 2026
55 of 66 checks passed
@jeromy-cannon jeromy-cannon deleted the 3032-ability-to-provide-different-block-node-sourcesjson-for-each-cn-that-is-created branch January 21, 2026 20:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR: Needs Manager Approval A pull request that needs review from a manager. PR: Needs Team Approval A pull request that needs review from a team member.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Ability to provide different block-node-sources.json for each CN that is created

3 participants